/*
	Version   : 1.3
	Created   : 20090404
	Modified  : 20091221
	Author    : Pablo Ramírez
	co-Author :
	Descr     : Conjunto de funciones javascript
	Changelog : 1.0 - Version Inicial
				1.1 - Se agrega validacion de digio verificador en codigo de contenedor
				1.2 - Se corrige validacion de codigo de contenedor desde timbre para contenedor conocido
				1.3 - Se crea funcion para validar tipo de contenedor para campo en survey detail
*/

function validateCountry()
{ 
  var cou_codigo     = document.getElementById("CountryCouCodigo");
  var cou_nombre     = document.getElementById("CountryCouNombre");
   
  if (cou_codigo.value.length < 2)
  {
    alert('No ha ingresado correctamente un codigo de pais');
    cou_codigo.focus();
    return false;
  }
  
  if (cou_nombre.value.length < 3)
  {
    alert('No ha ingresado correctamente el nombre del pais');
    cou_nombre.focus();
    return false;
  }

return true;
}

function validateDepot()
{ 
  var dep_codigo     = document.getElementById("DepotDepCodigo");
  var dep_nombre     = document.getElementById("DepotDepNombre");
  var dep_direccion1 = document.getElementById("DepotDepDireccion1");
  var dep_telefono1  = document.getElementById("DepotDepTelefono1");
  
  
  if (dep_codigo.value.length < 3)
  {
    alert('No ha ingresado correctamente un codigo de deposito');
    dep_codigo.focus();
    return false;
  }
  
  //check nombre
  if (dep_nombre.value.length < 3)
  {
    alert('No ha ingresado correctamente un nombre de deposito');
    dep_nombre.focus();
    return false;
  }
  
  //check direccion
  if (dep_direccion1.value.length < 3)
  {
    alert('Debe ingresar al menos una direccion');
    dep_direccion1.focus();
    return false;
  }
  
  //check telefono
  if (dep_direccion1.value.length < 3)
  {
    alert('Debe ingresar al menos un telefono');
    dep_telefono1.focus();
    return false;
  }
  
  //check mail
  /*var atpos  = email.value.indexOf("@");    //indexOf find something in your JavaScript string
  var dotpos = email.value.indexOf(".");
  
  //alert('at: ' + atpos);
  
  if ( atpos < 1 || dotpos < 1 || email.value.length < 5) 
  {
    alert('Mmmm, this email ' + email.value + ' does not look as a valid email');
    email.focus();
    return false;
  }
  
  if ( age.selectedIndex == 0 )
  {
	     alert ("Sorry kid: you are too young.");
        return false;
  }
  
  if (agree.checked == false)
  {
    alert('You must sign the contract ;-) ');
    return false;
  } */

return true;
}

function validateOwner()
{ 
  var own_nombre      = document.getElementById("OwnerOwnNombre");
  var own_direccion1  = document.getElementById("OwnerOwnDireccion1");
  var own_telefono1   = document.getElementById("OwnerOwnTelefono1");
  
  if (own_nombre.value.length < 3)
  {
    alert('No ha ingresado correctamente el nombre del deposito');
    own_nombre.focus();
    return false;
  }
  
  if (own_direccion1.value.length < 3)
  {
    alert('No ha ingresado correctamente la direccion del deposito');
    own_direccion1.focus();
    return false;
  }

  if (own_telefono1.value.length < 3)
  {
    alert('No ha ingresado correctamente el telefono del deposito');
    own_telefono1.focus();
    return false;
  }
return true;
}

function validateContainerType() 
{
  var cot_codigo       = document.getElementById("ContainerTypeCotCodigo");
  var cot_descripcion  = document.getElementById("ContainerTypeCotDescripcion");
  var cot_reffer_flag  = document.getElementById("ContainerTypeCotRefferFlag");

  if (cot_codigo.value.length < 3)
  {
    alert('No ha ingresado correctamente el codigo de tipo de contenedor');
    cot_codigo.focus();
    return false;
  }

  if (cot_descripcion.value.length < 3)
  {
    alert('No ha ingresado correctamente la descripcion del tipo de contenedor');
    cot_descripcion.focus();
    return false;
  }
return true;
}

function validateServiceType()
{
  var set_codigo       = document.getElementById("ServiceTypeSetCodigo");
  var set_descripcion  = document.getElementById("ServiceTypeSetDescripcion");

  if (set_codigo.value.length < 3)
  {
    alert('No ha ingresado correctamente el codigo del tipo de servicio');
    set_codigo.focus();
    return false;
  }

  if (set_descripcion.value.length < 3)
  {
    alert('No ha ingresado correctamente la descripcion del tipo de servicio');
    set_descripcion.focus();
    return false;
  }
return true;	
}

function validateSurveyType()
{
  var sut_codigo       = document.getElementById("SurveyTypeSutCodigo");
  var sut_descripcion  = document.getElementById("SurveyTypeSutDescripcion");
  var sut_musthave     = document.getElementById("SurveyTypeSutMusthave");

  if (sut_codigo.value.length < 3)
  {
    alert('No ha ingresado correctamente el codigo del tipo de inspeccion');
    sut_codigo.focus();
    return false;
  }

  if (sut_descripcion.value.length < 3)
  {
    alert('No ha ingresado correctamente la descripcion del tipo de inspeccion');
    sut_descripcion.focus();
    return false;
  }

return true;	
}

function validateContainer()
{
	//alert('Validar Codigo de Container');
	//alert("Codigo Contenedor ingresado: " + cod_codigo);
	var cod_codigo = document.getElementById("OrderContainerCodCodigo");
	if (cod_codigo==null) {
		//alert('Viene desde validar inspeccion');
		//var cod_codigo = document.getElementById("ContainerCodCodigo");
		var cod_codigo = $('survey_detail_table').getElementsBySelector('[class="firstfocus"]');
		cod_codigo = cod_codigo[0];
	}

	cod_codigo.value = cod_codigo.value.toUpperCase();
	
	//alert(cod_codigo.value);
	
	//comparacion con expresiones regulares solo para validar el formato indicado en la primera parte del doc.
	//patron = /[ABCDEFGHIJKLMNOPQRSTUVWXYZ]{3}[UJZ]{1}[0-9]{6}[-]{1}[0-9]{1}/
	patron = /[ABCDEFGHIJKLMNOPQRSTUVWXYZ]{3}[UJZ]{1}[0-9]{7}/
	//alert ("resultado de la comparacion: " + cod_codigo.value.search(patron));
	// si es 0 es OK y si es -1 esta mal
	if (cod_codigo.value.search(patron) != 0){
		alert("El codigo del contenedor es invalido");
		cod_codigo.focus();
		return false;
	}
	
	digitoVerificadorIngresado = cod_codigo.value.charAt(cod_codigo.value.length-1);

	var charValues = new Array();
	var resultado = 0;
	
	charValues.A = 10;
	charValues.B = 12;
	charValues.C = 13;
	charValues.D = 14;
	charValues.E = 15;
	charValues.F = 16;
	charValues.G = 17;
	charValues.H = 18;
	charValues.I = 19;
	charValues.J = 20;
	charValues.K = 21;
	charValues.L = 23;
	charValues.M = 24;
	charValues.N = 25;
	charValues.O = 26;
	charValues.P = 27;
	charValues.Q = 28;
	charValues.R = 29;
	charValues.S = 30;
	charValues.T = 31;
	charValues.U = 32;
	charValues.V = 34;
	charValues.W = 35;
	charValues.X = 36;
	charValues.Y = 37;
	charValues.Z = 38;
	
	for (var i=0; i < 10; i++)
	{ 
		char = cod_codigo.value.charAt(i);
		if (char.match(/[A-Z]/)) {
			resultado += ((charValues[char])*(Math.pow(2,i)));
			
		} else if(char.match(/[0-9]/)) {
			resultado += ((parseInt(char))*(Math.pow(2,i)));
		} else {
			alert("El Codigo de contenedor tiene un caracter invalido");
		}
		
		//alert("char: " + char + " resultado: " + resultado);
	}
	
	
	digitoVerificadorCalculado = (resultado - (Math.floor(resultado/11)*11));
	
	if (digitoVerificadorCalculado == 10) {
		digitoVerificadorCalculado = 0;
	}
	
	//alert("digito verificador calculado: " + digitoVerificadorCalculado);
	//alert("digito verificador ingresado: " + digitoVerificadorIngresado);
	
	if (digitoVerificadorCalculado != digitoVerificadorIngresado) {
		alert("El digito verificador no corresponde");
		cod_codigo.focus();
		return false;
	}

	
	//esto se podria sacar porque la validacion del formato lo hace arriba la expresion regular
	//if (cod_codigo.value.length != 12) --con guion
	if (cod_codigo.value.length != 11)
	  {
	    alert('No ha ingresado correctamente el codigo del contenedor');
	    cod_codigo.focus();
	    return false;
	  }
	
	return true;
}

function validateUser()
{
  var usr_codigo   = document.getElementById("UserUsrCodigo");
  var usr_nombre   = document.getElementById("UserUsrNombre");
  var usr_password = document.getElementById("UserUsrPassword");

  if (usr_codigo.value.length < 4)
  {
    alert('No ha ingresado un login valido');
    usr_codigo.focus();
    return false;
  }

  if (usr_nombre.value.length < 4)
  {
    alert('No ha ingresado un nombre valido');
    usr_nombre.focus();
    return false;
  }
  
  if (usr_password.value.length > 0 && usr_password.value.length < 4) {
    alert('La contraseña ingresada es debe tener 4 digitos o mas');
    usr_password.focus();
    return false;
  }
   return true;	
}

function validatePriceList()
{
   var opl_valor   = document.getElementById("PriceListOplValor");
   //patron = /^[0-9]+\.[0-9]+$/
   //alert(opl_valor.value.match(/^[0-9]+(\.[0-9]+)*$/));
   if (! opl_valor.value.match(/^[0-9]+(\.[0-9]+)*$/)) {
      alert('No ha ingresado un valor valido');
      opl_valor.focus();
      return false;
  }
  return true;
}

function cleanInput() 
{
	var cod_codigo       = document.getElementById("OrderContainerCodCodigo");
	//alert('entre a limpiar cod_codigo');
	cod_codigo.value = '';
	//return true;
}

function validateSurvey(cod_codigo) 
{
	//alert('voy a validar el survey');
	//alert(cod_codigo);
	var con_mgw       = document.getElementById("ContainerConMgw");
	var con_tare      = document.getElementById("ContainerConTare");
	var con_manuf     = document.getElementById("ContainerConManuf");
	var con_onhdate   = document.getElementById("ContainerConOnhdate");
	
	var est_original  = document.getElementById("OrderEstimateEstOriginal");
	var est_final     = document.getElementById("OrderEstimateEstFinal");
	var est_saving    = document.getElementById("OrderEstimateEstSaving");
	var est_id        = document.getElementById("OrderEstimateEstId");
	var est_cl        = document.getElementById("OrderEstimateEstCl");
	var est_wt        = document.getElementById("OrderEstimateEstWt");
	var est_ir        = document.getElementById("OrderEstimateEstIr");
	var est_pti       = document.getElementById("OrderEstimateEstPti");
	var est_line      = document.getElementById("OrderEstimateEstLine");
	var est_client    = document.getElementById("OrderEstimateEstClient");
	var est_thirds    = document.getElementById("OrderEstimateEstThirds");
	//var est_class     = document.getElementById("OrderEstimateEstClass");
	
	var save_button   = document.getElementById("save_survey_button");
		//var td_cot_codigo    = document.getElementById("link_cot_codigo");
		//alert(td_cot_codigo.innerHTML);
		//var cot_codigo = td_cot_codigo.innerHTML.substring(td_cot_codigo.innerHTML.indexOf("</a>") - 11, td_cot_codigo.innerHTML.indexOf("</a>"));
	if (document.getElementById(cod_codigo)) {
		var state_area    = document.getElementById(cod_codigo);
	} else {
		var state_area    = 'none';
	}
	
	//Valida codigo de contenedor ingresado solo si viene del add/depot o del survey detail sin contenedor conocido
	if (cod_codigo.length != 11) {
		//alert("no tiene container.. a validar codigo");
		if (validateContainer() == false) {
			return false;
		}
	}
	
	// DEJAR finalEstimate CON DECIMALES YA QUE ESTA TRUNCANDO EL RESULTADO DE LA SUMA.
	//se comenta porque no se debe sumar class, thirds y client
	//finalEstimate = parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value) + parseFloat(est_line.value) + parseFloat(est_client.value) + parseFloat(est_thirds.value) + parseFloat(est_class.value);
	//se comenta nuevamente porque final_estimate=id + cl + wt + ir + pti 
	//finalEstimate = parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value);
	finalEstimate = Math.round((parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value))*100)/100 ;
	finalProrate = parseFloat(est_client.value) + parseFloat(est_thirds.value) + parseFloat(est_line.value);
	
	//alert(est_id.value);
	//alert(est_pti.value);
	//alert(finalEstimate);
	//alert(est_final.value);
	
	
	if (con_onhdate.value.length < 3)
	{
		alert('No ha ingresado correctamente Date Survey');
		con_onhdate.focus();
		return false;
	}
	
	if (con_mgw.value < 0)
	{
		alert('No ha ingresado correctamente MGW');
		con_mgw.focus();
		return false;
	}
	
	if (con_tare.value < 0)
	{
		alert('No ha ingresado correctamente TARE');
		con_tare.focus();
		return false;
	}

	if (con_manuf.value < 0)
	{
		alert('No ha ingresado correctamente MANUF');
		con_manuf.focus();
		return false;
	}
	
	if (est_original.value < 0)
	{
		alert('No ha ingresado correctamente Original Estimate');
		est_original.focus();
		return false;
	}	
	
	if (est_final.value < 0)
	{
		alert('No ha ingresado correctamente Final Estimate');
		est_final.focus();
		return false;
	}

	if (est_saving.value < 0)
	{
		alert('No ha ingresado correctamente Saving');
		est_saving.focus();
		return false;
	}		
	
	if (est_id.value < 0)
	{
		alert('No ha ingresado correctamente ID');
		est_id.focus();
		return false;
	}
	
	if (est_cl.value < 0)
	{
		alert('No ha ingresado correctamente CL');
		est_cl.focus();
		return false;
	}
	
	if (est_wt.value < 0)
	{
		alert('No ha ingresado correctamente WT');
		est_wt.focus();
		return false;
	}

	if (est_ir.value < 0)
	{
		alert('No ha ingresado correctamente IR');
		est_ir.focus();
		return false;
	}

	if (est_pti.value < 0)
	{
		alert('No ha ingresado correctamente PTI');
		est_pti.focus();
		return false;
	}
	
	if (est_line.value < 0)
	{
		alert('No ha ingresado correctamente LINE');
		est_line.focus();
		return false;
	}

	if (est_client.value < 0)
	{
		alert('No ha ingresado correctamente CLIENT');
		est_client.focus();
		return false;
	}

	if (est_thirds.value < 0)
	{
		alert('No ha ingresado correctamente THIRDS');
		est_thirds.focus();
		return false;
	}

	/*if (est_class.value < 0)
	{
		alert('No ha ingresado correctamente CLASS');
		est_class.focus();
		return false;
	}*/
	
	est_final.value = (Math.round(est_final.value*100)/100);
	
	if (finalEstimate != est_final.value)
	{
		if (confirm('Final Estimate ' + finalEstimate + ' no coincide con el detalle de la inspeccion ' + est_final.value + ', desea continuar?'))
		{
			if (state_area != 'none') {
				state_area.style.background = "#7AC573";
				return true;
			}
		} else {
			est_final.focus();
			return false;
		}
	}
	
	if (finalProrate != est_final.value)
	{
		if (confirm('Final Estimate ' + finalEstimate + ' no coincide con el detalle del prorrateo ' + finalProrate + ', desea continuar?'))
		{
			if (state_area != 'none') {
				state_area.style.background = "#7AC573";
				return true;
			}
		} else {
			est_client.focus();
			return false;
		}
	}
	if (state_area != 'none') {
		state_area.style.background = "#7AC573";
	}
	
	return true;
}

function validateSurveyStamp(cod_codigo) 
{
	var con_mgw       = document.getElementById("ContainerConMgw");
	var con_tare      = document.getElementById("ContainerConTare");
	var con_manuf     = document.getElementById("ContainerConManuf");
	var con_onhdate   = document.getElementById("ContainerConOnhdate");
	
	var est_original  = document.getElementById("OrderEstimateEstOriginal");
	var est_final     = document.getElementById("OrderEstimateEstFinal");
	var est_saving    = document.getElementById("OrderEstimateEstSaving");
	var est_id        = document.getElementById("OrderEstimateEstId");
	var est_cl        = document.getElementById("OrderEstimateEstCl");
	var est_wt        = document.getElementById("OrderEstimateEstWt");
	var est_ir        = document.getElementById("OrderEstimateEstIr");
	var est_pti       = document.getElementById("OrderEstimateEstPti");
	var est_line      = document.getElementById("OrderEstimateEstLine");
	var est_client    = document.getElementById("OrderEstimateEstClient");
	var est_thirds    = document.getElementById("OrderEstimateEstThirds");
	
	var save_button   = document.getElementById("save_survey_button");
		//var td_cot_codigo    = document.getElementById("link_cot_codigo");
		//alert(td_cot_codigo.innerHTML);
		//var cot_codigo = td_cot_codigo.innerHTML.substring(td_cot_codigo.innerHTML.indexOf("</a>") - 11, td_cot_codigo.innerHTML.indexOf("</a>"));
		
	finalEstimate = Math.round((parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value))*100)/100 ;
	finalProrate = parseFloat(est_client.value) + parseFloat(est_thirds.value) + parseFloat(est_line.value);
	
	//alert(est_id.value);
	//alert(est_pti.value);
	//alert(finalEstimate);
	//alert(est_final.value);
		
	if (con_onhdate.value.length < 3)
	{
		alert('No ha ingresado correctamente Date Survey');
		con_onhdate.focus();
		return false;
	}
	
	if (con_mgw.value < 0)
	{
		alert('No ha ingresado correctamente MGW');
		con_mgw.focus();
		return false;
	}
	
	if (con_tare.value < 0)
	{
		alert('No ha ingresado correctamente TARE');
		con_tare.focus();
		return false;
	}

	if (con_manuf.value < 0)
	{
		alert('No ha ingresado correctamente MANUF');
		con_manuf.focus();
		return false;
	}
	
	if (est_original.value < 0)
	{
		alert('No ha ingresado correctamente Original Estimate');
		est_original.focus();
		return false;
	}	
	
	if (est_final.value < 0)
	{
		alert('No ha ingresado correctamente Final Estimate');
		est_final.focus();
		return false;
	}

	if (est_saving.value < 0)
	{
		alert('No ha ingresado correctamente Saving');
		est_saving.focus();
		return false;
	}		
	
	if (est_id.value < 0)
	{
		alert('No ha ingresado correctamente ID');
		est_id.focus();
		return false;
	}
	
	if (est_cl.value < 0)
	{
		alert('No ha ingresado correctamente CL');
		est_cl.focus();
		return false;
	}
	
	if (est_wt.value < 0)
	{
		alert('No ha ingresado correctamente WT');
		est_wt.focus();
		return false;
	}

	if (est_ir.value < 0)
	{
		alert('No ha ingresado correctamente IR');
		est_ir.focus();
		return false;
	}

	if (est_pti.value < 0)
	{
		alert('No ha ingresado correctamente PTI');
		est_pti.focus();
		return false;
	}
	
	if (est_line.value < 0)
	{
		alert('No ha ingresado correctamente LINE');
		est_line.focus();
		return false;
	}

	if (est_client.value < 0)
	{
		alert('No ha ingresado correctamente CLIENT');
		est_client.focus();
		return false;
	}

	if (est_thirds.value < 0)
	{
		alert('No ha ingresado correctamente THIRDS');
		est_thirds.focus();
		return false;
	}
	
	est_final.value = (Math.round(est_final.value*100)/100);
	
	if (finalEstimate != est_final.value)
	{
		if (confirm('Final Estimate ' + finalEstimate + ' no coincide con el detalle de la inspeccion ' + est_final.value + ', desea continuar?'))
		{
			return true;
		} else {
			est_final.focus();
			return false;
		}
	}
	
	if (finalProrate != est_final.value)
	{
		if (confirm('Final Estimate ' + finalEstimate + ' no coincide con el detalle del prorrateo ' + finalProrate + ', desea continuar?'))
		{
			return true;
		} else {
			est_client.focus();
			return false;
		}
	}
	
	return true;
}

function calculateSaving()
{
	//alert('calculando...');
	var est_saving    = document.getElementById("OrderEstimateEstSaving");
	var est_original  = document.getElementById("OrderEstimateEstOriginal");
	var est_final     = document.getElementById("OrderEstimateEstFinal");
	var disp_area     = 	document.getElementById("disp");
	var eOriginal = est_original.value;
	var eFinal    = est_final.value;
	
	//alert(eOriginal);
	//alert(eFinal);

	result = Math.round((eOriginal - eFinal)*Math.pow(10,3))/Math.pow(10,3);
	//alert(result);
	disp_area.innerHTML = '';
	est_saving.value = result;
	//button -- se podria habilitar aca
	
	return true;
}

function calculateEstimate()
{
	var est_final     = document.getElementById("OrderEstimateEstFinal");
	var est_id        = document.getElementById("OrderEstimateEstId");
	var est_cl        = document.getElementById("OrderEstimateEstCl");
	var est_wt        = document.getElementById("OrderEstimateEstWt");
	var est_ir        = document.getElementById("OrderEstimateEstIr");	
	var est_pti       = document.getElementById("OrderEstimateEstPti");		
	var est_line      = document.getElementById("OrderEstimateEstLine");		
	var est_client    = document.getElementById("OrderEstimateEstClient");
	var est_thirds    = document.getElementById("OrderEstimateEstThirds");	
	//var est_class     = document.getElementById("OrderEstimateEstClass");
	
	//se comenta porque final_estimate = id + cl + wt + ir + pti 
	//finalEstimate = parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value) + parseFloat(est_line.value);
	finalEstimate = parseFloat(est_id.value) + parseFloat(est_cl.value) + parseFloat(est_wt.value) + parseFloat(est_ir.value) + parseFloat(est_pti.value);
	est_final.value = Math.round(finalEstimate*Math.pow(10,2))/Math.pow(10,2);	
	calculateSaving();
	return true;
}

function validateNumber(elEvento)
{
	//alert('checkear numero valido...');
	var validos = "0123456789";
	var teclas_especiales_validas = [8, 9, 37, 39, 46];
	// 8 = BackSpace, 9 = Tab, 46 = Supr, 37 = flecha izquierda, 39 = flecha derecha
	
	// para saber que tecla se apreto
	var evento = elEvento || window.event;
	var codigoCaracter = evento.charCode || evento.keyCode;
	var caracter = String.fromCharCode(codigoCaracter);

	// Comprobar si la tecla apretada es alguna de las teclas especiales
	var tecla_especial = false;
	for(var i in teclas_especiales_validas) {
		if(codigoCaracter == teclas_especiales_validas[i]) {
			tecla_especial = true;
			break;
		}
	}
	// Comprobacion final tecla pulsada es permitida o es una especial
	return validos.indexOf(caracter) != -1 || tecla_especial;
}

function refreshContainerList(idOrder,idDepot)
{
	//alert('Refrescando header combo para ' +idOrder+' y '+idDepot);
	var on_survey_header = document.getElementById("on_survey_header");
	new Ajax.Updater('on_survey_header', '/inspecciones/orders/orderContainerList/'+idOrder+'/'+idDepot, { 
		//method: 'get' 
		asynchronous:true, 
		evalScripts:true, 
		requestHeaders:['X-Update', 'on_survey_header']
	});
}

function focusMGW()
{
	var con_mgw		= document.getElementById("ContainerConMgw");
	con_mgw.focus();
}

function cleanIfzero(element)
{
	if (element.value == "0") {
		element.value = "";
	}

}

function zeroFillIfEmpty (element)
{
	if (element.value == "") {
		element.value = "0";
	}

}

function set_services(element) 
{	
	//alert("el checkbox is_reefer esta: " + element.checked);
	
	if (element.checked) {
		Element.show($('combo_mach')); 
		Element.hide($('combo_box'));
	} else {
		Element.hide($('combo_mach')); 
		Element.show($('combo_box'));
	}
	
}

function validaCotCodigo(field) {
	var codigo = field.value;
	var destino = '/inspecciones/containerTypes/validateType/' + codigo;
	new Ajax.Request(destino,
	{
		method:'get',
		onSuccess: function(transport)
		{
			var response = transport.responseText || "no hay respuesta";
			//alert(response.substring(1, 3));
			if (response.substring(1, 3) == "OK") {
				//alert("bien");
				field.removeClassName("wrong_value");
				field.addClassName("correct_value");
				Form.Element.enable('save_survey_button');
			} else {
				//alert("mal");
				field.removeClassName("correct_value");
				field.addClassName("wrong_value");
				Form.Element.disable('save_survey_button');
				field.focus();
			}
		},
		onFailure: function()
		{
			field.removeClassName("correct_value");
			field.addClassName("wrong_value");
			Form.Element.disable('save_survey_button');
			field.focus();
		}
	});
}

function displayLoadingIndicator() {
	Element.show('loading-indicator');
}

function hideLoadingIndicator() {
	Element.hide('loading-indicator');
}